#ifndef __ATMOS_NetworkManagerServer_h__
#define __ATMOS_NetworkManagerServer_h__

#include "ATMOS_Common.h"
#include "ATMOS_NetworkManager.h"

namespace ATMOS {

//! The server-oriented implementation of the NetworkManager
/*!
	The NetworkManagerServer provides a network interface for applications that fill a server
	role in the network structure.

	Server applications can react to network events by using a PacketListener-derived custom
	class, or by inheriting from the NetworkManagerServer and overriding the available virtual
	functions.  Note that such subclasses would also likely override 
	NetworkManager::onAtmosPacket.
*/
class AtmosExport NetworkManagerServer : public NetworkManager
{
public:
	NetworkManagerServer();
	~NetworkManagerServer();

	//! initialize the server
	virtual void initialize( const NetworkConnectionInfo &info );
};

} // end namespace ATMOS

#endif